home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor2 / resistor.src < prev    next >
Text File  |  1992-01-11  |  5KB  |  231 lines

  1. %%HP: T(1)A(D)F(.);
  2. @ RESISTOR by David J. Sprenkle
  3. DIR
  4.   START.1
  5.     ½ RCLF ERASE
  6. PICT { # 79d # 0d }
  7. "VALUE" GO PICT RCL
  8. { # 79d # 12d } "▒"
  9. GO { # 75d # 25d }
  10. "BY" GO { # 75d
  11. # 31d }
  12. "DAVID SPRENKLE" GO
  13. { # 24d # 2d }
  14. "1ST STRIPE" GO {
  15. # 24d # 10d }
  16. "2ND STRIPE" GO {
  17. # 24d # 18d }
  18. "3RD STRIPE" GO {
  19. # 24d # 26d }
  20. "TOLERANCE" GO PICT
  21. STO 0 FIX NUMDISP 0
  22. STRIPEADJ MENUADJ {
  23. # 0d # 0d } PVIEW
  24. MLOOP DROP STOF
  25.     ╗
  26.   PPAR {
  27. (-6.5,-3.1)
  28. (6.5,3.2) X 0 (0,0)
  29. FUNCTION Y }
  30.   INPR
  31.     ½ DUP 5 ë
  32.       ½ 11.1 + 2
  33.       ╗
  34.       ½ 5.1 + 3
  35.       ╗ IFTE 'MROW'
  36. STO COLOR
  37.     ╗
  38.   ENTEV
  39.     ½
  40. "Enter the resistor
  41. value."
  42. { V } INPUT STRì 1
  43. SCI ìSTR STRì 0 FIX
  44. DUP MANT DUP IP DUP 
  45. 'STRIPE(1)' STO 1
  46. 'RROW' STO INPR FP
  47. 10 * DUP 'STRIPE(2)
  48. ' STO 2 'RROW' STO
  49. INPR XPON DUP '
  50. STRIPE(3)' STO 1 -
  51. 3 'RROW' STO DUP -1
  52. ë
  53.       ½ ABS 9 +
  54.       ╗ IFT INPR 0
  55. STRIPEADJ NUMDISP {
  56. # 0d # 0d } PVIEW 1
  57. 'MROW' STO 1 'RROW'
  58. STO 0 STRIPEADJ
  59.     ╗
  60.   COLOR
  61.     ½
  62.       IF DUP 15.1 è
  63. RROW 3 è MROW 3 ==
  64. AND AND
  65.       THEN
  66.         IF 15.1 ==
  67.         THEN {
  68. # 88d # 17d } {
  69. # 108d # 22d }
  70. GROB 12 6 710014007200410074000000
  71. COL1
  72.         ELSE {
  73. # 110d # 17d } {
  74. # 129d # 22d }
  75. GROB 12 6 321025402520251072400000
  76. COL1
  77.         END
  78.       ELSE
  79.         IF DUP 15.1
  80. < MROW 2 == OR RROW
  81. 4 < AND
  82.         THEN 10.1 -
  83. ì a
  84.           ½
  85. MENUKEYS a 22 * -21
  86. + RìB MROW 2 - 8 *
  87. 9 + RìB 2 ìLIST DUP
  88. OBJì DROP 5 + SWAP
  89. 18 + SWAP 2 ìLIST
  90. SUB STRIPES # 1d
  91. RROW 8 * 7 - RìB 2
  92. ìLIST ROT REPL
  93. 'STRIPES' STO a
  94. MROW 2 - 6 * + '
  95. STRIPE(RROW)' STO
  96.           ╗
  97.         ELSE DROP
  98.         END
  99.       END
  100.     ╗
  101.   NUMDISP
  102.     ½ 'STRIPE(1)' 1
  103. - 10 * 'STRIPE(2)'
  104. 1 - + 10 'STRIPE(3)
  105. ' 1 - ^ * ìNUM DUP
  106. 990 ë
  107.       ½ STD 1 ìGROB
  108. 0 FIX
  109.       ╗
  110.       ½ 1 ìGROB
  111.       ╗ IFTE PICT {
  112. # 79d # 6d } # 52d
  113. # 5d BLANK REPL
  114. PICT { # 79d # 6d }
  115. ROT REPL PICT {
  116. # 84d # 12d } '
  117. STRIPE(4)' EVAL
  118. REPL
  119.     ╗
  120.   STRIPEADJ
  121.     ½ 'RROW' STO+
  122.       IF RROW 1 <
  123.       THEN 4 'RROW'
  124. STO
  125.       END
  126.       IF RROW 4 >
  127.       THEN 1 'RROW'
  128. STO
  129.       END PICT {
  130. # 0d # 0d } STRIPES
  131. REPL PICT # 0d 8
  132. RROW 1 - * RìB 2
  133. ìLIST BLSTRIPE GXOR
  134.     ╗
  135.   BLSTRIPE
  136. GROB 23 9 FFFFF7FFFFF7FFFFF7FFFFF7FFFFF7FFFFF7FFFFF7FFFFF7FFFFF7
  137.   STRIPES
  138. GROB 23 33 FFFFF7100004DCC544555544DC4554555D64D4D544100004FFFFF71000049901349A8A04998B049A8A0499B234100004FFFFF710000416E6041A2A0416EA041A2A041AE604100004FFFFF7100004100004100004100004100004100004100004FFFFF7
  139.   STRIPE { 2 1 3
  140. GROB 12 6 721045407520151072400000
  141. }
  142.   MENUKEYS
  143. GROB 131 25 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7010000000000000000000080000020000401E2DDD0CC9567730521578075D122D164012694414544125505515180159026511401EE9CD0CC9422530571578072902E5114012A9441450542550251518015902A511401E29C514DD4327502577780759022D16401000000000000000000008000002000040FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7010000200008000002000080000020000409901323371906E602732988AB802E6EE409A8A02555190A2A02555B88A88021A2240998B023355906EA02537F809B802D6EE409A8A02555B90A2A02555D80988029A224099B232357190AE6027559809BB32EAEE401000020000800000200008000002000040FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF701000020000800000200008000002000040998A325D5C98B192A8AABB077132CA82409A8A025554848AA2A8A2988051522A8240998A32555C94B931AAE29B8651524A82409A8A02255484AA21ADA2988451528A014099BB322DDD98BA21A8A29B0777326A31401000020000800000200008000002000040FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
  144.   MENUADJ
  145.     ½
  146.       IF MROW 1 <
  147.       THEN 3 'MROW'
  148. STO
  149.       END
  150.       IF MROW 3 >
  151.       THEN 1 'MROW'
  152. STO
  153.       END PICT {
  154. # 0d # 39d }
  155. MENUKEYS REPL PICT
  156. # 0d MROW 8 * 31 +
  157. RìB 2 ìLIST BLANK.1
  158. GXOR
  159.     ╗
  160.   MLOOP
  161.     ½
  162.       WHILE 0 WAIT
  163. DUP 15.1 ï MROW 1 ï
  164. OR
  165.       REPEAT
  166.         IF DUP 20 è
  167.         THEN
  168.           CASE DUP
  169. 25.1 ==
  170.             THEN -1
  171. STRIPEADJ
  172.             END DUP
  173. 35.1 ==
  174.             THEN 1
  175. STRIPEADJ
  176.             END DUP
  177. 26.1 ==
  178.             THEN
  179. 'MROW' 1 STO-
  180. MENUADJ
  181.             END
  182.           END DROP
  183.         ELSE
  184.           IF MROW 2
  185. è
  186.           THEN
  187. COLOR 1 STRIPEADJ
  188. NUMDISP
  189.           ELSE
  190.             CASE
  191. DUP 14.1 ë
  192.               THEN
  193. ENTEV
  194.               END
  195. DUP 16.1 == RROW 4
  196. == AND
  197.               THEN
  198. STRIPES { # 2d
  199. # 25d } # 19d # 6d
  200. BLANK REPL
  201. 'STRIPES' STO
  202. GROB 12 6 721045407520151072400000 
  203. 'STRIPE(4)' STO 1
  204. STRIPEADJ NUMDISP
  205.               END
  206.             END
  207. DROP
  208.           END
  209.         END
  210.       END
  211.     ╗
  212.   RROW 4
  213.   MROW 1
  214.   BLANK.1
  215. GROB 131 8 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
  216.   GO
  217.     ½ 1 ìGROB REPL
  218.     ╗
  219.   COL1
  220.     ½ ì a b c
  221.       ½ MENUKEYS a
  222. b SUB STRIPES # 1d
  223. RROW 8 * 7 - RìB 2
  224. ìLIST ROT REPL
  225. 'STRIPES' STO RROW
  226. 4 == c 0 IFTE '
  227. STRIPE(RROW)' STO
  228.       ╗
  229.     ╗
  230. END
  231.